package org.isima.ui.faces.service;

import java.io.File;
import org.isima.ui.faces.model.FileNode;
import org.primefaces.model.DefaultTreeNode;
import org.primefaces.model.TreeNode;

public class DirectoryService {

	/**
	 * Recherche de tous les repertoires en partant d'une racine root
	 * @param root Racine de l'arbre (point de depart de la recherche)
	 * @param path Chemin vers cette racine
	 */
	public void doFindAll(TreeNode root,String path)
	{
		File dir = new File(path);
	    File[] filesList;
	    
	    filesList = dir.listFiles();
	    
	    if (filesList != null)
	    {
	    	for (int i = 0; i < filesList.length; i++)
	    	{
	    		if (filesList[i].isDirectory())
	    		{
	    			TreeNode node = new DefaultTreeNode(new FileNode(filesList[i].getName(),filesList[i]),root);
	    			doFindAll(node, filesList[i].getAbsolutePath());
	    		}
	    	}
	    } 
	}
}
